//
//  YTCameraManager.h
//  YUNT
//
//  Created by 梁炜东 on 2017/11/13.
//  Copyright © 2017年 梁炜东. All rights reserved.
//

#import <Foundation/Foundation.h>
#import <AssetsLibrary/AssetsLibrary.h>
#import <AVFoundation/AVFoundation.h>
#import "ZYXCommen.h"

#pragma mark 视频分辨率枚举值
typedef NS_ENUM(NSInteger, YTVideoResolution)
{
    YTVideoResolution1080,
    YTVideoResolution720,
    YTVideoResolution480,
    YTVideoResolution2160
};
#pragma mark 滤镜枚举值
typedef NS_ENUM(NSInteger, YTVideoFilter)
{
    YTRejuvenationFilter = 1,//嫩肤
    YTGenialFilter,//和煦
    YTMidnightFilter,//午夜
    YTSunshineFilter//阳光
};

@interface YTCameraManager : NSObject
@property (nonatomic, assign) AVCaptureFlashMode captureFlashMode;//闪关灯状态
@property (nonatomic, assign) AVCaptureTorchMode captureTorchMode;//手电筒状态
+ (YTCameraManager *)shareModel;

-(void)configInitView:(UIView *)videoView;
-(void)configOrientation;
#pragma mark 切换摄像头
-(void)switchCamera;
#pragma mark - 点击屏幕对焦
-(void)clickScreenFoucs:(CGPoint)point;
#pragma mark 录像
-(void)record;
#pragma mark - 暂停
- (void)pause;
#pragma mark 拍照
-(void)takePhoto;
#pragma mark 设置曝光时间
-(void)setExposure:(CGFloat)exposure;
/*设置多重曝光*/
-(void)setMoreExposureWithCount:(EventTwoHandler)handler;
/*结束多重曝光*/
-(void)endMoreExposure;

/*闪关灯
 AVCaptureFlashModeOff  = 0,关闭
 AVCaptureFlashModeOn   = 1,打开
 AVCaptureFlashModeAuto 自动
 */
- (void)flashLight:(AVCaptureFlashMode)flashMode;
/*手电筒*/
- (void)torchLight:(AVCaptureTorchMode)torchMode;
/*白平衡*/
-(void)whiteBlance;
/*是否开启美颜效果*/
- (void)BeautyFilter:(BOOL)isBeauty;
/*打开关闭防抖模式*/
- (void)isSupportedStabilization:(BOOL)open;
#pragma mark 设置hdr开关
-(void)setHDR:(BOOL)isOpen;
#pragma mark 设置视频分辨率
-(void)setVideoResolution:(YTVideoResolution)resolution;
#pragma mark 设置视频分辨率的帧率
-(void)setVideoResolutionFps:(int)fps;
#pragma mark 设置视频滤镜
-(void)setVideoFilter:(YTVideoFilter)filter;
#pragma mark 慢动作
-(void)configureCameraForHighestFrameRate;
#pragma mark 延时摄影
-(void)takeDelayPhoto;
@end
